#ifndef __UDSF_RADAR_BBE_C__
#define __UDSF_RADAR_BBE_C__

#include "app.h"
/*
*   notice:
*   UDSF 同UDF编程：不可调用cstd-lib,只可调用"sdk_ifs_udk_cfg.h"、"sys_api.h"中列出的API函数。
*   UDSF文件内函数均需使用static修饰符，且UDF中以#include "udsf_xxx.c"形式引用
*/

#if defined(FMCW_RADAR_4D)
static void udsf_bbe_angle(P2_FFT_CONFIG* p_alg,struct pc_rst_4d *frameRst,uint32_t cfg6)
#else
static void udsf_bbe_angle(P2_FFT_CONFIG* p_alg,struct pc_rst *frameRst,uint32_t cfg6)
#endif
{
	P2_FFT_CONFIG alg_tmp = *p_alg;
	for (uint32_t cnt = 0; cnt < frameRst->targetNum; cnt++)
	{
		alg_tmp.p2Cfg6 = cfg6 + cnt * ANT_MAX_NUM * NUM_BYTE32;
		
		#if SDK_VERSION < SDK_VERSION_GENE(3,0)
		ROM_P2_FFT_HANDLE(&alg_tmp); // 必须调用ROM函数以兼容 udsf_bbe_angle运行于bbsram的情况。即code@bbsram 操作p2会存在问题
		#else
		SAPI_P2_FFT_HANDLE(&alg_tmp);
		#endif
		#if defined(FMCW_RADAR_4D)
		frameRst->target[cnt].d4Idx = BBE_P2_STA0_MAXJUMPIDX;
		#else
		frameRst->target[cnt].d3Idx = BBE_P2_STA0_MAXJUMPIDX;
		#endif
	}
}

#endif
